Computing devices typically include applications that utilize third-party services that are made available by way of a server that is accessible via a network such as the Internet. Many on-line vendors or purveyors of goods and services use a dedicated server to help client computing devices and applications ascertain whether they have Internet connectivity. When a client computing device or application wishes to connect to a third-party service, they can typically contact the dedicated server to ascertain whether there is an Internet connection.
The dedicated server typically maintains a dedicated webpage that includes specific content that can be checked by the client computing device or application. Specifically, anytime the device or application wishes to check whether it has connectivity, it contacts the dedicated server and downloads the dedicated webpage. It can then compare the specific content on the dedicated webpage with content that knows should appear on the dedicated webpage. If the content matches, the client computing device or application knows that it has Internet access. Otherwise, if the download fails or the content is mis-matched, the computing device or application typically concludes that there is no Internet connectivity to that particular service and, accordingly, a user interface is presented to the user to prompt them to resolve the problem.
This approach works well except in cases where the vendor's dedicated server has an outage. In this case, if the third-party service is still available through an Internet connection, the client computing device or application will believe there is no connection at all and hence, will not be able to interact with the third-party service.